package com.ruoyi.system.service;

import com.ruoyi.common.core.domain.model.LoginUser;

/**
 * 过滤参数
 *
 * @param <T> 指定类型的参数
 * @author KevenPotter
 * @date 2024-04-28 13:33:05
 */
public interface FilterParams<T> {

    /**
     * 默认分隔符
     */
    String SPLIT = ",";

    /**
     * 过滤入埠参数参数
     *
     * @param t         指定的对象
     * @param loginUser 当前登录用户
     * @return 返回过滤后指定的对象
     * @author KevenPotter
     * @date 2024-04-28 13:34:02
     */
    T filterInbound(T t, LoginUser loginUser);

    /**
     * 过滤出埠参数参数
     *
     * @param t         指定的对象
     * @param loginUser 当前登录用户
     * @return 返回过滤后指定的对象
     * @author KevenPotter
     * @date 2024-04-28 13:34:12
     */
    T filterOutbound(T t, LoginUser loginUser);
}
